import type { TranslationType } from './types';

export const en: TranslationType = {
  title: "VoiceCanvas",
  inputPlaceholder: "Enter text to read...",
  speed: "Speed",
  voice: "Voice",
  female: "Female",
  male: "Male",
  wordByWord: "Word by Word",
  readText: "Read Text",
  uploadFile: "Upload File",
  downloadAudio: "Download Audio",
  selectLanguage: "Select Language",
  theme: "Theme",
  light: "Light",
  dark: "Dark",
  system: "System",
  noTextError: "No text to read",
  pleaseEnterText: "Please enter some text first",
  error: "Error",
  speechError: "An error occurred while trying to speak the text",
  downloadError: "An error occurred while downloading the audio",
  pdfNotSupported: "PDF files are not supported yet",
  wordNotSupported: "Word files are not supported yet",
  unsupportedFormat: "Unsupported file format",
  uploadError: "Failed to upload file",
  speechService: "Speech Service",
  selectService: "Select Service Provider",
  serviceSettings: "Service Settings",
  minimaxNotSupported: "Minimax does not support speech synthesis for this language, switched to AWS Polly automatically",
  voiceNotSupported: "Voice selection not supported",
  on: "On",
  off: "Off",
  characters: "characters",
  landingTitle: "VoiceCanvas",
  landingSubtitle: "Instant text-to-speech in 50+ languages with voice cloning, powered by advanced AI for natural and clear voice synthesis.",
  startNow: "Try it Now",
  tryForFree: "Try It For Free",
  feature1Title: "High-Quality Voice",
  feature1Desc: "Crystal-clear voice synthesis with natural intonation and rhythm",
  feature2Title: "Multiple Languages",
  feature2Desc: "50+ languages with both male and female voices, perfect for global content",
  feature3Title: "Advanced Features",
  feature3Desc: "Customize speed, visualize audio, and enable word-by-word reading for better learning",
  ctaTitle: "Start Using Our Text-to-Speech Tool Today",
  coreFeatures: "Core Features",
  howItWorks: "How It Works",
  testimonials: "What Our Users Say",
  step1Title: "Enter Text",
  step1Desc: "Input or upload the text you want to convert to speech",
  step2Title: "Configure Settings",
  step2Desc: "Choose language, voice, and adjust speed as needed",
  step3Title: "Generate Speech",
  step3Desc: "Click to convert your text into natural-sounding speech",
  testimonial1Name: "John Doe",
  testimonial1Role: "Language Learner",
  testimonial1Content: "This tool has greatly improved my pronunciation and listening skills. The multiple language support is fantastic!",
  testimonial2Name: "Maria Garcia",
  testimonial2Role: "Content Creator",
  testimonial2Content: "I use this daily for creating voiceovers. The quality is excellent and the process is super simple.",
  testimonial3Name: "Sarah Chen",
  testimonial3Role: "Teacher",
  testimonial3Content: "Perfect for creating learning materials. My students love the clear pronunciation and adjustable speed.",
  testimonial4Name: "Robert Wilson",
  testimonial4Role: "Business Owner",
  testimonial4Content: "This tool has revolutionized our international communication. The voice quality and language support are exceptional.",
  login: "Login",
  register: "Register",
  continueWith: "Continue with {provider}",
  orContinueWith: "Or continue with",
  orLoginWith: "Or login with",
  orRegisterWith: "Or register with",
  githubLogin: "Continue with GitHub",
  googleLogin: "Continue with Google",
  dividerText: "or",
  aiPowered: "AI Powered",
  languagesSupported: "50+ Languages",
  copyright: "© {year} VoiceCanvas. All rights reserved.",
  footerSlogan: "Crafted with ❤️ for a better voice experience",
  loginDescription: "Sign in with your account to access more features",
  registerDescription: "Create a new account to start using our service",
  passwordMismatch: "Passwords do not match",
  back: "Back",
  profile: "Profile",
  settings: "Settings",
  basicInfo: "Basic Information",
  username: "Username",
  email: "Email",
  registrationTime: "Registration Time",
  loginMethod: "Login Method",
  notSet: "Not Set",
  emailPassword: "Email & Password",
  logout: "Sign Out",
  loginRequired: "Login Required",
  loginToUseFeature: "Please sign in to access this feature. It only takes a moment!",
  password: "Password",
  confirmPassword: "Confirm Password",
  loading: "Loading...",
  loginSuccess: "Login Successful",
  registerSuccess: "Registration Successful",
  welcomeBack: "Welcome back!",
  authError: "Authentication failed. Please try again.",
  registerError: "Registration failed. Please try again.",
  noAccount: "No account? Register",
  haveAccount: "Already have an account? Login",
  chinese: "Chinese",
  english: "English",
  japanese: "Japanese",
  korean: "Korean",
  spanish: "Spanish",
  french: "French",
  russian: "Russian",
  italian: "Italian",
  portuguese: "Portuguese",
  german: "German",
  indonesian: "Indonesian",
  arabic: "Arabic",
  cantonese: "Cantonese",
  danish: "Danish",
  dutch: "Dutch",
  finnish: "Finnish",
  greek: "Greek",
  hebrew: "Hebrew",
  hindi: "Hindi",
  hungarian: "Hungarian",
  norwegian: "Norwegian",
  polish: "Polish",
  romanian: "Romanian",
  swedish: "Swedish",
  turkish: "Turkish",
  welsh: "Welsh",
  vietnamese: "Vietnamese",
  ukrainian: "Ukrainian",
  catalan: "Catalan",
  czech: "Czech",
  britishEnglish: "British English",
  australianEnglish: "Australian English",
  mexicanSpanish: "Mexican Spanish",
  usSpanish: "US Spanish",
  canadianFrench: "Canadian French",
  belgianFrench: "Belgian French",
  brazilianPortuguese: "Brazilian Portuguese",
  austrianGerman: "Austrian German",
  swissGerman: "Swiss German",
  uaeArabic: "UAE Arabic",
  belgianDutch: "Belgian Dutch",
  indianEnglish: "Indian English",
  welshEnglish: "Welsh English",
  irishEnglish: "Irish English",
  newZealandEnglish: "New Zealand English",
  southAfricanEnglish: "South African English",
  icelandic: "Icelandic",
  scottishEnglish: "Scottish English",
  singaporeanEnglish: "Singaporean English",
  
  // 添加缺失的语言翻译键
  afrikaans: "Afrikaans",
  bulgarian: "Bulgarian",
  croatian: "Croatian",
  lithuanian: "Lithuanian",
  latvian: "Latvian",
  macedonian: "Macedonian",
  malay: "Malay",
  serbian: "Serbian",
  slovak: "Slovak",
  slovenian: "Slovenian",
  swahili: "Swahili",
  tamil: "Tamil",
  thai: "Thai",
  urdu: "Urdu",
  traditionalChinese: "Traditional Chinese",
  saudiArabic: "Saudi Arabic",
  
  // Pricing Page
  pricingTitle: "Simple and Transparent Pricing",
  pricingSubtitle: "Choose the plan that best fits your needs, adjust anytime",
  mostPopular: "Most Popular",
  bestValue: "Best Value",
  free: "Free",
  perYear: "/year",
  perMonth: "/month",
  
  // Plans
  trialPlan: "Trial",
  trialDesc: "Experience VoiceCanvas basic features",
  yearlyPlan: "Annual Plan",
  yearlyDesc: "Perfect for power users, best value",
  monthlyPlan: "Monthly Plan",
  monthlyDesc: "Ideal for individuals and small projects",
  noPlan: "No Plan",
  
  // Subscription
  subscription: "Subscription",
  currentPlan: "Current Plan",
  planStatus: "Plan Status",
  expiryDate: "Expiry Date",
  active: "Active",
  inactive: "Inactive",
  
  // Character Quota
  characterQuota: "Character Quota",
  totalQuota: "Total Quota",
  usedQuota: "Used",
  remainingQuota: "Remaining",
  lastUpdated: "Last Updated",
  noQuota: "No quota available",
  permanentQuota: "Permanent Quota",
  temporaryQuota: "Temporary Quota",
  permanentValid: "Valid Forever",
  quotaExpiryTime: "Expires on: {date}",
  
  // Payment Success
  paymentSuccess: "Payment Successful",
  refreshingData: "Refreshing data...",
  subscriptionSuccess: "Subscription Successful",
  subscriptionUpdated: "Your subscription plan has been updated, refreshing data...",
  purchaseSuccess: "Purchase Successful",
  quotaUpdated: "Your character quota has been updated, refreshing data...",
  
  // Features
  freeChars: "{amount} characters free",
  trialPeriod: "{days}-day trial",
  yearlyQuota: "{amount} characters per year",
  monthlyQuota: "{amount} characters per month",
  languageSupport: "50+ languages supported",
  basicSpeedControl: "Basic speed control",
  basicVoiceSelection: "Basic voice selection",
  textInputOnly: "Text input only",
  standardSupport: "Standard support",
  fullSpeedControl: "Full speed control",
  allVoices: "All voices available",
  wordByWordReading: "Word-by-word reading",
  fileUpload: "File upload support",
  audioVisualization: "Audio visualization",
  advancedAudioEdit: "Advanced audio editing",
  prioritySupport: "Priority support",
  support247: "24/7 dedicated support",
  earlyAccess: "Early access to new features",
  
  // Buttons
  startTrial: "Start Trial",
  chooseYearly: "Choose Annual",
  chooseMonthly: "Choose Monthly",
  buyNow: "Buy Now",
  
  // Pay As You Go
  payAsYouGo: "Pay As You Go",
  tenThousandChars: "100K characters",
  millionChars: "1M characters",
  threeMillionChars: "3M characters",
  
  // FAQ
  faq: "Frequently Asked Questions",
  faqTrialFeatures: "What features are included in the trial?",
  faqTrialFeaturesAnswer: "The trial includes a 7-day period with 10,000 characters, support for 50+ languages, basic speed control, and voice selection. You can experience core features through text input to see if it meets your needs.",
  faqHowToTry: "How do I start the trial?",
  faqHowToTryAnswer: "Simply register for an account to get trial access, no credit card required. You can upgrade to a paid plan anytime during the trial to access more features and higher character quotas.",
  faqQuotaCalc: "How is the character quota calculated?",
  faqQuotaCalcAnswer: "Character quota is calculated based on the actual text input, including spaces and punctuation.",
  faqPayment: "What payment methods are accepted?",
  faqPaymentAnswer: "We accept various convenient payment methods: debit cards, credit cards, WeChat Pay, Alipay, and more. You'll find a suitable payment option regardless of your location. All payment channels are encrypted for security.",
  faqQuotaType: "What's the difference between purchased quota and membership bonus quota?",
  faqQuotaTypeAnswer: "Character quota purchased separately is permanent and never expires. However, quota received through membership plans is temporary and will expire when the membership period ends. We recommend choosing the purchase method that best suits your usage needs.",
  
  // Operation Tips
  operationSuccess: "Operation Successful",
  operationFailed: "Operation Failed",
  pleaseWait: "Please wait...",
  processingRequest: "Processing request...",
  
  // Speech Synthesis Tips
  textTooLong: "Text exceeds length limit",
  textLengthLimit: "Current service provider supports up to {limit} characters",
  quotaInsufficient: "Insufficient character quota",
  quotaRemaining: "Remaining quota: {count} characters",
  synthesizing: "Generating speech...",
  downloadingAudio: "Downloading audio...",

  // New translation keys
  serviceProviderCharacterLimit: "Current service provider has a limit of {limit} characters",
  textTruncatedDueToLimit: "Text has been truncated to the maximum length supported by the service provider",
  insufficientCharacterQuota: "Your character quota is insufficient, please purchase more quota or upgrade your plan",
  quotaCheckUnavailable: "Character quota check service is temporarily unavailable, please try again later",
  
  // File Operation Tips
  uploadingFile: "Uploading file...",
  fileFormatError: "Unsupported file format",
  fileSizeLimit: "File size exceeds limit",
  fileUploadSuccess: "File uploaded successfully",
  fileUploadFailed: "File upload failed",
  
  // User Operation Tips
  sessionExpired: "Session expired, please sign in again",
  unauthorized: "Unauthorized access",
  
  // Quota Related Tips
  quotaUpdateFailed: "Failed to update character quota",
  checkingQuota: "Checking character quota...",
  
  // Subscription Related Tips
  subscriptionRequired: "Subscription Required",
  subscriptionExpired: "Subscription Expired",
  subscriptionActive: "Subscription Active",
  subscriptionUpdateSuccess: "Subscription updated successfully",
  subscriptionUpdateFailed: "Failed to update subscription",
  
  // Payment Related Tips
  processingPayment: "Processing payment...",
  paymentFailed: "Payment failed",
  paymentCanceled: "Payment canceled",
  
  // Error Tips
  networkError: "Network error, please try again later",
  serverError: "Server error, please try again later",
  unknownError: "An unknown error occurred",
  tryAgainLater: "Please try again later",
  
  // Confirmation Tips
  confirmLogout: "Confirm logout?",
  confirmCancel: "Confirm cancel operation?",
  confirmDelete: "Confirm delete?",
  yes: "Yes",
  no: "No",
  confirm: "Confirm",
  cancel: "Cancel",
  
  // Loading States
  saving: "Saving...",
  updating: "Updating...",
  deleting: "Deleting...",
  processing: "Processing...",
  home: "Home",
  workspace: "Workspace",
  pricing: "Pricing",
  noAvailableVoice: "No available voices for current language",
  selectVoiceFirst: "Please select a voice first",
  notice: "Notice",
  quotaCheckFailed: "Failed to get user quota, continuing with speech synthesis",
  quotaCheckError: "Error checking quota, continuing with speech synthesis",
  updateQuotaFailed: "Failed to update character usage",
  updateQuotaError: "Error updating character usage",
  speechSynthesisError: "Speech synthesis error",

  // Voice Related
  noAvailableVoices: "No available voice",
  clonedVoices: "My Cloned Voices",
  clonedVoice: "Cloned Voice",
  systemVoices: "System Voices",
  systemVoice: "System Voice",

  // Profile page
  notSubscribed: "Not Subscribed",
  notActivated: "Not Activated",
  cloneQuota: "Clone Quota",
  totalClones: "Total Clones",
  usedClones: "Used Clones",
  remainingClones: "Remaining Clones",
  clonePackagePurchaseSuccess: "Clone Package Purchase Success",
  updatingCloneCount: "Updating clone count...",
  times: "times",

  // Clone Packages
  clonePackagesTitle: "Voice Clone Packages",
  clonePackagesSubtitle: "Choose a clone package that suits your needs, one-time purchase with lifetime validity",
  clonePackageBasic: "Basic Clone Package",
  clonePackageBasicDesc: "Perfect for individual experience",
  clonePackageAdvanced: "Advanced Clone Package",
  clonePackageAdvancedDesc: "Ideal for small teams",
  clonePackagePro: "Professional Clone Package",
  clonePackageProDesc: "Suitable for professional users and teams",
  cloneFeature1Times: "{count} voice clones",
  cloneFeatureValidForever: "Valid forever",
  cloneFeatureMultiLanguage: "Support for multiple languages including Chinese, English, Japanese, Korean",
  cloneFeatureCustomization: "Support for personalization",
  cloneFeatureStandardSupport: "Standard customer support",
  cloneFeaturePrioritySupport: "Priority customer support",

  // Clone Voice FAQ
  faqCloneVoice: "How does voice cloning work and what should I know?",
  faqCloneVoiceAnswer: "Voice cloning creates a digital copy of your voice using AI technology. To get the best results: 1) Record at least 1 minute of clear speech in a quiet environment with a good microphone. 2) Clone credits are permanent and never expire. 3) Once cloned, you can use your voice for text-to-speech in any supported language. 4) The cloned voice quality depends mainly on your recording quality. 5) Perfect for content creation, dubbing, or personal use.",

  // Voice Cloning Page
  voiceCloning: "Voice Cloning",
  uploadAudio: "Upload Audio",
  record: "Record",
  stopRecording: "Stop Recording",
  startCloning: "Start Cloning",
  cloning: "Cloning...",
  voiceId: "Voice ID: ",
  clear: "Clear",
  instructions: "Instructions",
  audioFileSelected: "Audio file selected",
  fileSelected: "Selected: {filename} ({size}MB)",
  recordingComplete: "Recording Complete",
  recordingSaved: "Recording saved: {filename} ({size}MB)",
  startRecordingTitle: "Start Recording",
  startRecordingDesc: "Please speak...",
  microphoneAccessError: "Cannot access microphone",
  audioUploadRequirements: "Please upload an audio file (supports mp3, m4a, wav format, size under 20MB, duration 10 seconds - 5 minutes)",
  fileSizeExceeded: "File size exceeds limit, please upload a file under 20MB (current size: {size}MB)",
  audioDurationError: "Cannot read audio duration",
  minDurationError: "Audio duration cannot be less than 10 seconds",
  maxDurationError: "Audio duration cannot exceed 5 minutes",
  audioFileSelectedTitle: "Audio file selected",
  audioFileSelectedDesc: "Selected file: {filename} ({size}MB, duration: {duration} seconds)",
  fetchCloneVoicesError: "Failed to fetch cloned voices list",
  deleteCloneVoiceError: "Failed to delete cloned voice",
  deleteSuccess: "Delete Successful",
  cloneVoiceDeleted: "Cloned voice has been deleted",
  uploadAudioFirst: "Please upload or record audio first",
  loginForCloning: "Please login before cloning",
  fetchUserDataError: "Failed to get user data",
  insufficientCloneCredits: "Insufficient clone credits",
  buyMoreCredits: "Your clone credits have been used up, please purchase more",
  startCloningTitle: "Start Cloning",
  startCloningDesc: "Processing audio file, please wait...",
  cloneVoiceFailed: "Voice cloning failed",
  invalidVoiceId: "No valid voice ID received",
  cloneSuccess: "Clone Successful",
  cloneReadyToUse: "Voice has been successfully cloned and is ready to use",
  clearClonedVoice: "Cleared cloned voice",

  // Instructions
  instruction1: "1. Upload a clear voice recording (supports mp3, m4a, wav format)",
  instruction2: "2. Recommended audio duration: 10 seconds - 5 minutes",
  instruction3: "3. Content should be text reading, avoid background noise",
  instruction4: "4. File size should not exceed 20MB",
  instruction5: "5. You'll receive a voice ID after cloning",
  instruction6: "6. Use the voice ID to generate cloned speech for any text",
  legalNotice: "Note: Please ensure you have legal rights to use the uploaded audio. Unauthorized audio cloning is prohibited. The cloned voice is for personal, non-commercial use only. Please comply with relevant laws and regulations.",

  // Cloned Voices API
  saveCloneVoiceError: "Failed to save cloned voice",
  defaultClonedVoiceName: "Cloned Voice {date}",

  // Voice Clone API Messages
  minimaxConfigError: "Please configure MINIMAX_API_KEY and MINIMAX_GROUP_ID environment variables first",
  fileUploadError: "File upload failed: {status} - {error}",
  fileIdError: "File upload failed: No file_id received",
  receivedFile: "Received file",
  startingFileUpload: "Starting audio file upload...",
  fileUploadSuccesss: "Audio file uploaded successfully, file_id",
  startingVoiceClone: "Starting voice cloning...",
  voiceCloneError: "Voice cloning failed: {status} - {error}",
  cloneResult: "Clone result",
  cloneCountUpdateSuccess: "Clone count updated successfully",
  clonedVoiceSaved: "Cloned voice saved to database",
  cloneError: "Clone error",
  stripeLoadError: "Failed to load payment system",
  checkoutError: "Failed to create checkout session",
  invalidSessionId: "Invalid checkout session",
  save: "Save",

  // Homepage Voice Cloning Related
  feature4Title: "Voice Cloning",
  feature4Desc: "Personalized voice cloning for more human-like AI speech",
  
  // Voice Cloning How It Works
  voiceCloningHowItWorks: "How Voice Cloning Works",
  voiceCloneStep1Title: "Upload Voice",
  voiceCloneStep1Desc: "Upload a 3-10 second clear voice sample",
  voiceCloneStep2Title: "AI Analysis",
  voiceCloneStep2Desc: "AI extracts voice features and builds model",
  voiceCloneStep3Title: "Clone Ready",
  voiceCloneStep3Desc: "Generate personalized AI voice model",
  voiceCloneStep4Title: "Enter Text",
  voiceCloneStep4Desc: "Input text you want to convert",
  voiceCloneStep5Title: "Apply Model",
  voiceCloneStep5Desc: "Use the cloned AI voice model",
  voiceCloneStep6Title: "Generate Speech",
  voiceCloneStep6Desc: "Output natural cloned voice speech",

  // New User Testimonials
  testimonial5Name: "Mr. Li",
  testimonial5Role: "Content Creator",
  testimonial5Content: "This tool has significantly improved my content production efficiency, especially when dealing with multilingual content.",
  testimonial6Name: "Ms. Yang",
  testimonial6Role: "Podcast Host",
  testimonial6Content: "The voice cloning feature is amazing! With just a few seconds of voice sample, it perfectly replicates my voice, allowing me to easily create multilingual versions of my podcast.",
  testimonial7Name: "Mr. Ke",
  testimonial7Role: "Voice Actor",
  testimonial7Content: "As a voice actor, I have high standards for voice quality. The voice cloning quality on this platform is impressive, preserving the emotion and characteristics of the original voice.",
  testimonial8Name: "Ms. Huang",
  testimonial8Role: "Educator",
  testimonial8Content: "After cloning my voice on this platform, I can pre-record course content and let students hear my explanations anytime, greatly enhancing the teaching effectiveness."
} as const;